function ngdomSpriteItem(x, y) {
	ngdomSpriteItem.prototype.base.constructor.call(this, x, y);
	this.touchDamage = 0;
	this.speed = 1;
	this.direction = 1;
	this.moveSpeed = 0;
	this.animateHover = true;
	this.invincible = true;
	this.layer = 1;
	this.canTake = true;
	this.takeSound = 'itemTake';
	this.inventoryItem = false;
	this.taken = false;
	this.hudIcon = false;
	this.cannotTakeMessage = "You can't take this now. Perhaps later...";
	this.loading = false;
	this.spriteStates = false;
	this.spriteDirections = false;
}
ngdomSpriteItem.inherits(ngdomSprite);
ngdomSpriteItem.prototype.behave = function () {
	return false;
};
ngdomSpriteItem.prototype.collideWithPlayer = function () { 
	if (this.canTake) {
		if (this.playerTakeAllowed()) {
			this.taken = true;
			this.dead = true;
			if (this.el) this.el.hide();
			if (this.hudIcon) $(this.hudIcon).show();
			if (this.inventoryItem) this.engine.player.inventory.add(this.inventoryItem);
			if (this.engine.sounds && this.engine.begun) this.engine.sounds.play(this.takeSound);
		}
		else {
			this.engine.showGameText(this.cannotTakeMessage);
			this.taken = false;
		}
	}
};
ngdomSpriteItem.prototype.playerTakeAllowed = function () {
	return true;
};
ngdomSpriteItem.prototype.loop = function () {
	if (this.animateHover) {
		this.speed = (26 - ((this.position.y - this.initialPosition.y) ^ 2)) / 45;
		if (this.position.y < this.initialPosition.y - 4) this.direction = 3;
		if (this.position.y > this.initialPosition.y + 4) this.direction = 1;
	}
	if (!this.playerOverlap && this.canTake) this.engine.hideGameText(this.cannotTakeMessage);
};
ngdomSpriteItem.prototype.save = function () {
	return { taken: this.taken };
};
ngdomSpriteItem.prototype.load = function (data) {
	this.taken = data.taken;
	if (this.taken) {
		this.collideWithPlayer();
	}
};